Changeset 41 for trunk/var/www/info/alkis/alkisbestnw.php
- Timestamp:
- 09/03/10 13:36:04 (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/var/www/info/alkis/alkisbestnw.php
r26 r41 1 1 <?php 2 /* alkisbestnw.php 2 /* Modul: alkisbestnw.php 3 Version: 4 31.08.2010 $style=ALKIS entfernt, alles Kompakt 5 02.09.2010 Mit Icons 3 6 4 7 ALKIS-Buchauskunft, Kommunales Rechenzentrum Minden-Ravensberg/Lippe (Lemgo). 5 8 Bestandsnachweis fuer ein Grundbuch aus ALKIS PostNAS 6 9 Parameter: &gkz= &gmlid 7 8 Version:9 26.01.2010 internet-Version mit eigener conf10 11 10 */ 12 ini_set('error_reporting', 'E_ALL & ~ E_NOTICE'); 11 //ini_set('error_reporting', 'E_ALL & ~ E_NOTICE'); 12 ini_set('error_reporting', 'E_ALL'); 13 13 session_start(); 14 14 // Bindung an Mapbender-Authentifizierung … … 20 20 <html> 21 21 <head> 22 <meta name="author" content="F . Jaeger">22 <meta name="author" content="Frank Jaeger" > 23 23 <meta http-equiv="cache-control" content="no-cache"> 24 24 <meta http-equiv="pragma" content="no-cache"> … … 27 27 <title>ALKIS Bestandsnachweis</title> 28 28 <link rel="stylesheet" type="text/css" href="alkisauszug.css"> 29 <link rel="shortcut icon" type="image/x-icon" href="ico/Grundbuch.ico"> 29 30 <style type='text/css' media='print'> 30 31 .noprint { visibility: hidden;} … … 38 39 $idanzeige=false; 39 40 if ($id == "j") {$idanzeige=true;} 40 $style=isset($_GET["style"]) ? $_GET["style"] : "kompakt";41 //$style=isset($_GET["style"]) ? $_GET["style"] : "kompakt"; 41 42 $dbname = 'alkis05' . $gkz; 42 43 $con = pg_connect("host=".$dbhost." port=".$dbport." dbname=".$dbname." user=".$dbuser." password=".$dbpass); 43 44 if (!$con) echo "<p class='err'>Fehler beim Verbinden der DB</p>\n"; 44 // ** G R U N D B U C H ** 45 /* Bei JOIN ueber alkis_beziehungen. Entgegen Dokumentation keine Verbindung gefunden! 46 $sql.="FROM ax_buchungsblatt g "; 47 $sql.="JOIN ax_buchungsblattbezirk b ON g.land=b.land AND g.bezirk=b.bezirk "; // BBZ 48 $sql.="JOIN alkis_beziehungen bba ON b.gml_id=bba.beziehung_von "; // Bez->AG 49 $sql.="JOIN ax_dienststelle a ON bba.beziehung_zu=a.gml_id "; 50 $sql.="WHERE g.gml_id='".$gmlid."' "; 51 $sql.="AND bba.beziehungsart='gehoertZu' "; 52 $sql.="AND a.stellenart=1000;"; // Amtsgericht 53 */ 45 46 // G R U N D B U C H 54 47 // Direkter JOIN zwischen den "ax_buchungsblattbezirk" und "ax_dienststelle". 55 // Ueber Feld "gehoertzu|ax_dienststelle_schluessel|land" und "stelle" 48 // Ueber Feld "gehoertzu|ax_dienststelle_schluessel|land" und "stelle". 49 // Bei JOIN ueber alkis_beziehungen entgegen Dokumentation keine Verbindung gefunden. 56 50 $sql ="SELECT g.gml_id, g.bezirk, g.buchungsblattnummermitbuchstabenerweiterung AS nr, g.blattart, "; // GB-Blatt 57 51 $sql.="b.gml_id, b.bezirk, b.bezeichnung AS beznam, "; // Bezirk 58 52 $sql.="a.gml_id, a.land, a.bezeichnung, a.stelle, a.stellenart "; // Amtsgericht 59 $sql.="FROM ax_buchungsblatt 60 $sql.="JOIN ax_buchungsblattbezirk b 61 $sql.="JOIN ax_dienststelle aON b.\"gehoertzu|ax_dienststelle_schluessel|land\"=a.land AND b.stelle=a.stelle ";53 $sql.="FROM ax_buchungsblatt g "; 54 $sql.="JOIN ax_buchungsblattbezirk b ON g.land=b.land AND g.bezirk=b.bezirk "; // BBZ 55 $sql.="JOIN ax_dienststelle a ON b.\"gehoertzu|ax_dienststelle_schluessel|land\"=a.land AND b.stelle=a.stelle "; 62 56 $sql.="WHERE g.gml_id='".$gmlid."' "; 63 57 $sql.="AND a.stellenart=1000;"; // Amtsgericht … … 67 61 if ($row = pg_fetch_array($res)) { 68 62 $blattart=blattart($row["blattart"]); 69 echo "<p class='gbkennz'>Bestand ".$row["bezirk"]." - ".$row["nr"]." </p>\n"; 70 echo "\n<h2>Grundbuch ALKIS</h2>\n"; 71 63 64 // Balken 65 echo "<p class='gbkennz'>ALKIS Bestand ".$row["bezirk"]." - ".$row["nr"]." </p>\n"; 66 67 echo "\n<h2><img src='ico/Grundbuch.ico' width='16' height='16' alt=''> Grundbuch</h2>"; 68 69 // Kennzeichen im Rahmen 72 70 echo "\n<table class='outer'>\n<tr>\n\t<td>"; 73 echo "\n\t<table class='kennz' title='Bestandskennzeichen'>\n\t<tr>"; 74 echo "\n\t\t<td class='head'>".dienststellenart($row["stellenart"])."</td>"; 75 echo "\n\t\t<td class='head'>Bezirk</td>"; 76 echo "\n\t\t<td class='head'>".$blattart."</td>\n\t</tr>"; 77 echo "\n\t<tr>"; 78 echo "\n\t\t<td title='Amtsgerichtsbezirk'>".$row["stelle"]."<br>".htmlentities($row["bezeichnung"], ENT_QUOTES, "UTF-8")."</td>"; 79 echo "\n\t\t<td title='Grundbuchbezirk'>".$row["bezirk"]."<br>".htmlentities($row["beznam"], ENT_QUOTES, "UTF-8")."</td>"; 80 echo "\n\t\t<td title='Grundbuch-Blatt'>".$row["nr"]."</td>"; 81 echo "\n\t</tr>\n\t</table>\n"; 82 echo "\n\t</td>\n\t<td>"; 83 if ($idanzeige) {linkgml($gkz, $gmlid, "Buchungsblatt");} 71 echo "\n\t<table class='kennz' title='Bestandskennzeichen'>"; 72 echo "\n\t<tr>"; 73 echo "\n\t\t<td class='head'>".dienststellenart($row["stellenart"])."</td>"; 74 echo "\n\t\t<td class='head'>Bezirk</td>"; 75 echo "\n\t\t<td class='head'>".$blattart."</td>"; 76 echo "\n\t</tr>\n\t<tr>"; 77 echo "\n\t\t<td title='Amtsgerichtsbezirk'><span class='key'>".$row["stelle"]."</span><br>".htmlentities($row["bezeichnung"], ENT_QUOTES, "UTF-8")."</td>"; 78 echo "\n\t\t<td title='Grundbuchbezirk'><span class='key'>".$row["bezirk"]."</span><br>".htmlentities($row["beznam"], ENT_QUOTES, "UTF-8")."</td>"; 79 echo "\n\t\t<td title='Grundbuch-Blatt'><span class='wichtig'>".$row["nr"]."</span></td>"; 80 echo "\n\t</tr>"; 81 echo "\n\t</table>"; 82 echo "\n\n\t</td>\n\t<td>"; 83 if ($idanzeige) linkgml($gkz, $gmlid, "Buchungsblatt"); 84 84 echo "\n\t</td>\n</tr>\n</table>"; 85 } 86 87 // E I G E N T U E M E R 88 if ($row["blattart"] == 5000) { 89 echo "\n<p>Keine Angaben zum Eigentum bei fiktivem Blatt</p>\n"; 90 echo "\n<p>Siehe weitere Grundbuchblätter mit Rechten an dem fiktiven Blatt.</p>\n"; 91 // ++++ nuetzlich waere hier: Liste der Grundbuecher mit Recht ueber "an"-Beziehung 92 93 } else {// kein Eigent. bei fiktiv. Blatt 94 echo "\n<h3><img src='ico/Eigentuemer_2.ico' width='16' height='16' alt=''> Angaben zum Eigentum</h3>\n"; 95 $n = eigentuemer($con, $gkz, $idanzeige, $gmlid, true); // hier mit Adressen 96 if ($n == 0) { // keine Namensnummer, kein Eigentuemer 97 echo "\n<p class='err'>Keine Namensnummer gefunden.</p>"; 98 echo "\n<p>Bezirk: ".$row["bezirk"].", Blatt: ".$row["nr"].", Blattart ".$row["blattart"]." (".$blattart.")</p>"; 99 linkgml($gkz, $gmlid, "Buchungsblatt"); 100 } 85 101 } 86 102 $res=""; 87 103 $row=""; 88 104 89 // ** E I G E N T U E M E R 90 echo "\n<hr>\n\n<h3>Angaben zum Eigentum</h3>\n"; 91 92 // Schleife 1: N a m e n s n u m m e r 93 // Beziehung: ax_namensnummer >istBestandteilVon> ax_buchungsblatt 94 $sql="SELECT n.gml_id, n.laufendenummernachdin1421 AS lfd, n.zaehler, n.nenner, "; 95 $sql.="n.artderrechtsgemeinschaft AS adr, n.beschriebderrechtsgemeinschaft as beschr, n.eigentuemerart, n.anlass "; 96 $sql.="FROM ax_namensnummer n "; 97 $sql.="JOIN alkis_beziehungen b ON b.beziehung_von=n.gml_id "; 98 $sql.="WHERE b.beziehung_zu='".$gmlid."' "; // id blatt 99 $sql.="AND b.beziehungsart='istBestandteilVon' "; 100 $sql.="ORDER BY laufendenummernachdin1421;"; 101 $resn=pg_query($con, $sql); 102 if (!$resn) {echo "<p class='err'>Fehler bei Eigentuemer<br>SQL= ".$sql."<br></p>\n";} 103 echo "\n<table class='eig'>"; 104 $n=0; // Z.NamNum. 105 while($rown = pg_fetch_array($resn)) { 106 echo "\n<tr>\n\t<td class='nanu' title='Namens-Nummer'>"; 107 // VOR die Tabelle: "Eigentümer" 108 $namnum=kurz_namnr($rown["lfd"]); 109 echo "\n\t\t<p>".$namnum."</p>"; 110 if ($idanzeige) {linkgml($gkz, $rown["gml_id"], "Namensnummer");} 111 echo "\n\t</td>\n\t<td>"; 112 $rechtsg=$rown["adr"]; 113 if ($rechtsg != "" ) { 114 if ($rechtsg == 9999) { // sonstiges 115 echo "\n\t\t\t<p class='zus' title='Beschrieb der Rechtsgemeinschaft'>".htmlentities($rown["beschr"], ENT_QUOTES, "UTF-8")."</p>"; 116 } else { 117 echo "\n\t\t\t<p class='zus' title='Art der Rechtsgemeinschaft'>".htmlentities(rechtsgemeinschaft($rown["adr"]), ENT_QUOTES, "UTF-8")."</p>"; 118 } 119 } 120 //if ($rown["anlass"] > 0 ) {echo "<p>Anlass=".$rown["anlass"]."</p>";} // TEST: 121 122 //echo "\n\t\t</td>\n\t\t<td></td>\n</tr>"; 123 124 // Schleife Ebene 2: andere Namensnummern 125 // Beziehung ax_namensnummer >bestehtAusRechtsverhaeltnissenZu> ax_namensnummer 126 127 // Die Relation 'Namensnummer' besteht aus Rechtsverhältnissen zu 'Namensnummer' sagt aus, 128 // dass mehrere Namensnummern zu einer Rechtsgemeinschaft gehören können. 129 // Die Rechtsgemeinschaft selbst steht unter einer eigenen AX_Namensnummer, 130 // die zu allen Namensnummern der Rechtsgemeinschaft eine Relation besitzt. 131 132 // Die Relation 'Namensnummer' hat Vorgänger 'Namensnummer' gibt Auskunft darüber, 133 // aus welchen Namensnummern die aktuelle entstanden ist. 134 135 // Schleife 2: P e r s o n 136 // Beziehung: ax_person <benennt< ax_namensnummer 137 $sql="SELECT p.gml_id, p.nachnameoderfirma, p.vorname, p.geburtsname, p.geburtsdatum, p.namensbestandteil, p.akademischergrad "; 138 $sql.="FROM ax_person p "; 139 $sql.="JOIN alkis_beziehungen v ON v.beziehung_zu=p.gml_id "; 140 $sql.="WHERE v.beziehung_von='".$rown["gml_id"]."' "; // id num 141 $sql.="AND v.beziehungsart='benennt';"; 142 //echo "\n\t<p class='err'>Schleife Person SQL=<br>".$sql."</p>"; // test 143 144 $rese=pg_query($con, $sql); 145 if (!$rese) echo "\n\t<p class='err'>Fehler bei Eigentuemer<br>SQL= ".$sql."<br></p>\n"; 146 $i=0; // Z.Eig. 147 while($rowe = pg_fetch_array($rese)) { 148 $diePerson=""; 149 if ($rowe["akademischergrad"] <> "") $diePerson=$rowe["akademischergrad"]." "; 150 $diePerson.=$rowe["nachnameoderfirma"]; 151 if ($rowe["vorname"] <> "") $diePerson.=", ".$rowe["vorname"]; 152 if ($rowe["namensbestandteil"] <> "") $diePerson.=". ".$rowe["namensbestandteil"]; 153 if ($rowe["geburtsdatum"] <> "") $diePerson.=", geb. ".$rowe["geburtsdatum"]; 154 if ($rowe["geburtsname"] <> "") $diePerson.=", geb. ".$rowe["geburtsname"]; 155 $diePerson=htmlentities($diePerson, ENT_QUOTES, "UTF-8"); // Umlaute 156 157 // Spalte 1 enthält die Namensnummer, nur in Zeile 0 158 if ($i > 0) { 159 echo "\n<tr>\n\t<td></td>\n\t<td>"; 160 } 161 // Spalte 2 = Angaben 162 echo "\n\t\t<p class='geig' title='Eigentümerart ".eigentuemerart($rown["eigentuemerart"])."'>".$diePerson."</p>\n\t</td>"; 163 // Spalte 3 = Link 164 echo "\n\t<td>\n\t\t<p class='nwlink noprint'>\n\t\t\t<a href='alkisnamstruk.php?gkz=".$gkz."&gmlid=".$rowe[0]."&style=".$style; 165 if ($idanzeige) { echo "&id=j";} 166 echo "' title='vollständiger Name und Adresse eines Eigentümers'>Person</a>\n\t\t</p>"; 167 if ($idanzeige) { linkgml($gkz, $rowe["gml_id"], "Person");} 168 echo "\n\t</td>\n</tr>"; 169 170 // Schleife 3: A d r e s s e 171 $sql ="SELECT a.gml_id, a.ort_post, a.postleitzahlpostzustellung AS plz, a.strasse, a.hausnummer, a.bestimmungsland "; 172 $sql.="FROM ax_anschrift a "; 173 $sql.="JOIN alkis_beziehungen b ON a.gml_id=b.beziehung_zu "; 174 $sql.="WHERE b.beziehung_von='".$rowe["gml_id"]."' "; 175 $sql.="AND b.beziehungsart='hat';"; //"ORDER BY ?;"; 176 //echo "\n<p class='err'>".$sql."</p>\n"; 177 $resa=pg_query($con,$sql); 178 if (!$resa) echo "\n\t<p class='err'>Fehler bei Adressen.<br>\nSQL= ".$sql."</p>\n"; 179 $j=0; 180 while($rowa = pg_fetch_array($resa)) { 181 $gmla=$rowa["gml_id"]; 182 $plz=$rowa["plz"]; 183 $ort=htmlentities($rowa["ort_post"], ENT_QUOTES, "UTF-8"); 184 $str=htmlentities($rowa["strasse"], ENT_QUOTES, "UTF-8"); 185 $hsnr=$rowa["hausnummer"]; 186 $land=htmlentities($rowa["bestimmungsland"], ENT_QUOTES, "UTF-8"); 187 // Spalte 1 188 echo "\n<tr>\n\t<td> </td>"; 189 //Spalte 2 190 echo "\n\t<td>\n\t\t<p class='gadr'>"; 191 if ($str.$hsnr != "") echo $str." ".$hsnr."<br>"; 192 //if ($plz.$ort != "") 193 echo $plz." ".$ort; 194 if ($land != "" and $land != "DEUTSCHLAND") echo ", ".$land; 195 echo "</p>\n\t</td>"; 196 // Spalte 3 197 echo "\n\t<td>"; 198 if ($idanzeige) {linkgml($gkz, $gmla, "Adresse");} 199 echo "\n\t</td>\n</tr>"; 200 $j++; 201 } 202 // 'keine Adresse' kann vorkommen, z.B. "Deutsche Telekom AG" 203 //if ($j == 0) { 204 // echo "\n<tr>\n\t<td></td>"; 205 // echo "\n\t<td>\n\t\t<p class='err'>Keine Adressen.</p></td>"; 206 // echo "\n\t<td></td>\n<tr>"; 207 //} 208 $i++; // Z. Person 209 210 // als eigene Tab-Zeile? 211 // 'Anteil' ist der Anteil der Berechtigten in Bruchteilen (Par. 47 GBO) 212 // an einem gemeinschaftlichen Eigentum (Grundstück oder Recht). 213 if ($rown["zaehler"] <> "") { 214 echo "\n<tr>\n\t<td></td>\n\t<td><p class='avh' title='Anteil'>".$rown["zaehler"]."/".$rown["nenner"]." Anteil</p>"; 215 echo "\n</td>\n\t<td></td>\n</tr>"; 216 } 217 } 218 /* Wann warnen? 219 if ($i == 0) { // keine Pers zur NamNum 220 if ($rechtsg != 9999) { // Art der Rechtsgemeinsachft, 0 Eigent. ist Normal bei Sondereigentum 221 echo "\n<tr>\n<td>"; 222 linkgml($gkz, $rown["gml_id"], "Namensnummer"); 223 echo "</td>\n<td>\n\t\t<p class='err'>Kein Eigentümer gefunden. (Rechtsgemeinschaft=".$rechtsg.")</p>"; 224 echo "\n\t\t\n\t</td>\n\t<td></td>\n<tr>"; 225 } 226 } 227 */ 228 $n++; // Z.NamNum 229 } 230 echo "\n</table>\n"; 231 if ($n == 0) { 232 echo "\n<p class='err'>Keine Namensnummer gefunden.</p>"; 233 echo "\n<p>Bezirk: ".$row["bezirk"].", Blatt: ".$row["nr"].", Blattart ".$row["blattart"]." (".$blattart.")</p>"; 234 linkgml($gkz, $gmlid, "Buchungsblatt"); 235 } 236 237 If ($style == "alkis") { 238 } else { // kompakter Style, alles in eine Tabelle quetschen 239 echo "\n<hr>\n\n<h3>Flurstücke</h3>"; 240 echo "\n<table class='fs'>"; 241 242 echo "\n<tr>"; 243 echo "\n\t<td class='head' title='laufende Nummer Bestandsverzeichnis (BVNR) = Grundstück'>lfd.Nr</td>"; 244 echo "\n\t<td class='head'>Buchungsart</td>"; //2 245 echo "\n\t<td class='head'>Anteil</td>"; //3 246 echo "\n\t<td class='head'>Gemarkung</td>"; //4 247 echo "\n\t<td class='head'>Flur</td>"; //5 248 echo "\n\t<td class='head' title='Flurstücksnummer (Zähler / Nenner)'>Flurst.</td>"; 249 echo "\n\t<td class='head'>Fläche</td>"; 250 echo "\n\t<td class='head' title='Link: weitere Auskunft'>weit. Ausk.</td>"; 251 252 echo "\n</tr>"; 253 } 254 255 // Schleife 1: B u c h u n g s s t e l l e 256 // ax_buchungsblatt >bestehtAus> ax_buchungsstelle 257 // <istBestandteilVon< 105 echo "\n<hr>\n\n<h3><img src='ico/Flurstueck.ico' width='16' height='16' alt=''> Flurstücke</h3>"; 106 echo "\n<table class='fs'>"; 107 // Kopf der Tabelle 108 echo "\n<tr>\n\t<td class='head' title='laufende Nummer Bestandsverzeichnis (BVNR) = Grundstück'> lfd.Nr</td>"; 109 echo "\n\t<td class='head'>Buchungsart</td>"; //2 110 echo "\n\t<td class='head'>Anteil</td>"; //3 111 echo "\n\t<td class='head'>Gemarkung</td>"; //4 112 echo "\n\t<td class='head'>Flur</td>"; //5 113 echo "\n\t<td class='head' title='Flurstücksnummer (Zähler / Nenner)'>Flurst.</td>"; 114 echo "\n\t<td class='head fla'>Fläche</td>"; 115 echo "\n\t<td class='head nwlink' title='Link: weitere Auskunft'>weit. Auskunft</td>\n</tr>"; 116 117 // Blatt -> B u c h u n g s s t e l l e 118 // ax_buchungsblatt >bestehtAus> ax_buchungsstelle 119 // ax_buchungsblatt <istBestandteilVon< ax_buchungsstelle 258 120 $sql ="SELECT s.gml_id, s.buchungsart, s.laufendenummer AS lfd, s.beschreibungdesumfangsderbuchung AS udb, s.zaehler, s.nenner, s.nummerimaufteilungsplan AS nrap, s.beschreibungdessondereigentums AS sond "; 259 121 $sql.="FROM ax_buchungsstelle s "; … … 266 128 $i=0; 267 129 while($row = pg_fetch_array($res)) { 268 269 If ($style == "alkis") { // Ausgabe im ALKIS-Style 270 echo "\n\n<h3>Laufende Nummer: ".$row["lfd"]."</h3>"; 271 echo "\n<p>".buchungsart($row["buchungsart"])."</p>"; 272 273 if ($idanzeige) {linkgml($gkz, $row["gml_id"], "Buchungsstelle");} 274 if ($row["udb"] != "") {echo "<br>Umfang der Buchung: ".$row["udb"];} // beschreibungdesumfangsderbuchung 275 if ($row["zaehler"] != "") {echo "<br>Anteil ".$row["zaehler"]."/".$row["nenner"];} 276 if ($row["nrap"] != "") { 277 echo "\n<br>Nr. im Aufteilungsplan: ".$row["nrap"]; // nummerimaufteilungsplan 130 $lfdnr = $row["lfd"]; 131 $bvnr = str_pad($lfdnr, 4, "0", STR_PAD_LEFT); 132 $gml_bs = $row["gml_id"]; // id der buchungsstelle 133 $ba = buchungsart($row["buchungsart"]); 134 if ($row["zaehler"] == "") { 135 $anteil = ""; 136 } else { 137 $anteil = $row["zaehler"]."/".$row["nenner"]; 138 } 139 140 // F l u r s t u e c k s d a t e n zur direkten Buchungsstelle 141 $j = bnw_fsdaten($con, $gkz, $idanzeige, $lfdnr, $gml_bs, $ba, $anteil, true); // return = Anzahl der FS 142 143 if ($row["nrap"] != "") { 144 echo "\n<tr>\n\t<td class='sond' colspan=8>Nr. im Aufteilungsplan: ".$row["nrap"]."</td>\n<tr>"; 145 } 146 if ($row["sond"] != "") { 147 echo "\n<tr>\n\t<td class='sond' colspan=8>Verbunden mit dem Sondereigentum an: ".$row["sond"]."</td>\n<tr>"; 148 } 149 150 if ($j == 0) { // k e i n e Flurstuecke gefunden (Miteigentumsnteil usw.) 151 // Bei "normalen" Grundstuecken wurden Flurstuecksdaten gefunden und ausgegeben. 152 // Bei Miteigentumsanteil, Erbbaurecht usw. muss nach weiteren Buchungsstellen gesucht werden: 153 // Buchungsstelle >an> Buchungsstelle >istBestandTeilVon> "FiktivesBlatt (ohne) Eigentuemer" 154 155 // andere Buchungsstellen 156 // ax_buchungsstelle >zu> ax_buchungsstelle (des gleichen Blattes) 157 // ax_buchungsstelle >an> ax_buchungsstelle (anderes Blatt, z.B Erbbaurecht >an> ) 158 159 // a n d e r e Buchungsstelle ("an"-Beziehung) 160 $sql ="SELECT s.gml_id, s.buchungsart, s.laufendenummer AS lfd, s.beschreibungdesumfangsderbuchung AS udb, s.nummerimaufteilungsplan AS nrap, s.beschreibungdessondereigentums AS sond "; 161 // , s.zaehler, s.nenner 162 $sql.="FROM ax_buchungsstelle s "; 163 $sql.="JOIN alkis_beziehungen v ON s.gml_id=v.beziehung_zu "; 164 $sql.="WHERE v.beziehung_von='".$gml_bs."' "; // id buchungsstelle (fiktives Blatt) 165 //$sql.="AND v.beziehungsart='an' "; 166 $sql.="AND (v.beziehungsart='an' OR v.beziehungsart='zu') "; 167 $sql.="ORDER BY s.laufendenummer;"; 168 //echo "<br><p class='err'>".$sql."</p><br>"; 169 170 $resan=pg_query($con,$sql); 171 if (!$resan) {echo "<p class='err'>Fehler bei andere Buchungsstelle<br><br>".$sql."</p>\n";} 172 $a=0; 173 while($rowan = pg_fetch_array($resan)) { 174 // auch suchen? 175 // ax_buchungsstelle >verweistAuf> ax_flurstueck 176 // ax_buchungsstelle >grundstueckBestehtAus> ax_flurstueck 177 // ax_buchungsstelle <istGebucht< ax_flurstueck 178 $lfdnran = $rowan["lfd"]; 179 $gml_bsan= $rowan["gml_id"]; // id der buchungsstelle 180 $baan = buchungsart($rowan["buchungsart"]); 181 182 // Fiktives Blatt 183 $sql ="SELECT b.gml_id, b.land, b.bezirk, b.buchungsblattnummermitbuchstabenerweiterung AS blatt "; 184 $sql.="FROM ax_buchungsblatt b "; 185 $sql.="JOIN alkis_beziehungen v ON b.gml_id=v.beziehung_zu "; 186 $sql.="WHERE v.beziehung_von='".$gml_bsan."' "; 187 $sql.="AND v.beziehungsart='istBestandteilVon' "; 188 $sql.="ORDER BY b.land, b.bezirk, b.buchungsblattnummermitbuchstabenerweiterung;"; 189 190 $fbres=pg_query($con,$sql); 191 if (!$fbres) {echo "<p class='err'>Fehler bei fiktivem Blatt<br><br>".$sql."</p>\n";} 192 $b=0; 193 while($fbrow = pg_fetch_array($fbres)) { // genau 1 194 $fbgml = $fbrow["gml_id"]; 195 $fbland = $fbrow["land"]; 196 $fbbez = $fbrow["bezirk"]; 197 $fbblatt = $fbrow["blatt"]; 198 $b++; 199 } 200 if ($b <> 1) echo "<p class='err'>Anzahl fiktive Blätter zu anderer Buchungstelle = ".$b."</p>"; 201 202 // G r u n d b u c h d a t e n zur a n d e r e n Buchungsstelle (fiktives Blatt, Recht "an" ...) 203 //$bvnran=str_pad($lfdnran, 4, "0", STR_PAD_LEFT); 204 // Kompakter Style 205 echo "\n<tr>\n\t<td>".$bvnr; // Sp.1 Erbbau BVNR 206 if ($idanzeige) linkgml($gkz, $gml_bs, "Buchungsstelle"); 207 echo "</td>"; 208 echo "\n\t<td>".$ba." an</td>"; // Sp.2 Buchung 209 echo "\n\t<td>".$anteil."</td>"; // Sp.3 Anteil ++++ LEER !!?? Wieso 210 echo "\n\t<td>Bezirk ".$fbbez."</td>"; // Sp.4 Gemkg, hier Bezirk ++++ entschluesseln? 211 echo "\n\t<td></td>"; // Sp.5 Flur 212 echo "\n\t<td>Blatt ".$fbblatt."</td>"; // Sp.6 Flurst 213 echo "\n\t<td></td>"; // Sp.7 Flaeche 214 echo "\n\t<td>"; // Sp.8 Link 215 echo "<p class='nwlink'>an <a href='alkisbestnw.php?gkz=".$gkz."&gmlid=".$fbgml; 216 if ($idanzeige) echo "&id=j"; 217 echo "' title='Grundbuchnachweis fiktives Blatt'>GB</a></p></td>\n</tr>"; 218 219 // F l u r s t u e c k s d a t e n zur a n d e r e n Buchungsstelle (fiktives Blatt, Recht "an" ...) 220 $aj = bnw_fsdaten($con, $gkz, $idanzeige, $lfdnran, $gml_bsan, $baan, $anteil, false); // return = Anzahl der FS 221 // +++ Gibt es ueberhaupt Sondereigentum beim fiktiven Blatt?? 222 223 // Kompakter Style 224 if ($rowan["nrap"] != "") { 225 echo "\n<tr>\n\t<td class='sond' colspan=8>Nr. im Aufteilungsplan: ".$rowan["nrap"]."</td>\n<tr>"; 226 } 227 if ($rowan["sond"] != "") { 228 echo "\n<tr>\n\t<td class='sond' colspan=8>Verbunden mit dem Sondereigentum an: ".$rowan["sond"]."</td>\n<tr>"; 229 } 230 231 $a++; 232 if ($aj == 0) { // keine Flurstuecke gefunden 233 echo "<p>keine Flurstücke zu anderer Buchung gefunden</p>"; 234 } 278 235 } 279 if ($row["sond"] != "") { 280 echo "\n<br>Verbunden mit dem Sondereigentum an: ".$row["sond"]; //beschreibungdessondereigentums 236 if ($a == 0) { 237 echo "\n<p class='err'>Keine andere Buchungstelle gefunden.</p>\n"; 238 linkgml($gkz, $$gml_bs, "Buchungsstelle"); 281 239 } 282 283 //echo "\n<h4>Das ".buchungsart($row["buchungsart"])." besteht aus:</h4>";284 echo "\n<h4>Das Grundstück besteht aus:</h4>";285 286 //} else { // Kompakter Style287 }288 289 // Schleife 2a: andere Buchungsstellen290 // ax_buchungsstelle >zu> ax_buchungsstelle (des gleichen Blattes)291 // >an> ax_buchungsstelle (anderes Blatt, z.B Erbbaurecht >an> )292 293 // ++++ To Do: auch suchen?294 // Schleife 2b: Flurstueck295 // ax_buchungsstelle >verweistAuf> ax_flurstueck296 297 // ax_buchungsstelle >grundstueckBestehtAus> ax_flurstueck298 // <istGebucht<299 300 // F L U R S T U E C K301 $sql="SELECT g.gemarkungsnummer, g.bezeichnung, ";302 $sql.="f.gml_id, f.flurnummer, f.zaehler, f.nenner, f.regierungsbezirk, f.kreis, f.gemeinde, f.amtlicheflaeche ";303 $sql.="FROM ax_gemarkung g ";304 $sql.="JOIN ax_flurstueck f ON f.land=g.land AND f.gemarkungsnummer=g.gemarkungsnummer ";305 $sql.="JOIN alkis_beziehungen v ON f.gml_id=v.beziehung_von ";306 $sql.="WHERE v.beziehung_zu='".$row["gml_id"]."' "; // id buchungsstelle307 $sql.="AND v.beziehungsart='istGebucht' ";308 $sql.="ORDER BY f.gemarkungsnummer, f.flurnummer, f.zaehler, f.nenner;";309 310 $resf=pg_query($con,$sql);311 if (!$resf) {echo "<p class='err'>Fehler bei Flurstück<br><br>".$sql."</p>\n";}312 $j=0;313 while($rowf = pg_fetch_array($resf)) {314 $fskenn=$rowf["zaehler"];315 if ($rowf["nenner"] != "") {$fskenn.="/".$rowf["nenner"];}316 $flae=number_format($rowf["amtlicheflaeche"],0,",",".") . " m²";317 318 If ($style == "alkis") { // Darstellung ALKIS-Like319 320 echo "\n<table class='outer'>\n<tr>";321 echo "\n\t<td>";322 echo "\n\t\t<h6>Flurstück ".$fskenn.", Flur ".$rowf["flurnummer"].", Gemarkung ".$rowf["gemarkungsnummer"]." ".$rowf["bezeichnung"]."</h6>";323 echo "\n\t</td>";324 325 echo "\n\t<td>";326 echo "\n\t\t<p class='nwlink noprint'><a href='alkisfsnw.php?gkz=".$gkz."&gmlid=".$rowf["gml_id"]."&eig=n"."&style=".$style;327 if ($idanzeige) { echo "&id=j";}328 echo "' title='Flurstücksnachweis'>FS-Nachweis</a></p>";329 if ($idanzeige) {linkgml($gkz, $rowf["gml_id"], "Flurstück");}330 echo "\n\t</td>\n</tr>\n</table>";331 332 //echo "\n</tr>\n<table>";333 334 /* echo "\n<tr>\n\t<td>Gebietszugehörigkeit:</td>";335 echo "\n\t<td>Gemeinde ".$rowf["gemeinde"]."<br>";336 echo "Kreis ".$rowf["kreis"]."<br>";337 echo "Regierungsbezirk ".$rowf["regierungsbezirk"]."</td>\n</tr>";338 339 echo "\n<tr>\n\t<td>Lage:</td>";340 echo "\n\t<td>(noch in Arbeit)</td>\n</tr>";341 342 echo "\n<tr>\n\t<td>Tatsächliche Nutzung:</td>";343 echo "\n\t<td>(noch in Arbeit)</td>\n</tr>";344 */345 //echo "\n<tr>\n\t<td>";346 347 echo "\n<p>Fläche: ";348 //echo "</td>\n\t<td>";349 echo $flae."</p>";350 //echo "</td>\n</tr>";351 //echo "\n</table>";352 353 } else { // kompakter Style354 echo "\n<tr>"; // eine Zeile je Flurstueck355 // Sp. 1-3 aus Buchungsstelle356 echo "\n\t<td>".$row["lfd"];357 if ($idanzeige) {linkgml($gkz, $row["gml_id"], "Buchungsstelle");}358 echo "</td>";359 360 echo "\n\t<td>".buchungsart($row["buchungsart"])."</td>";361 362 echo "\n\t<td>";363 if ($row["zaehler"] != "") {echo $row["zaehler"]."/".$row["nenner"];}364 echo "</td>";365 366 //Sp. 4-7 aus Flurstueck367 echo "\n\t<td>".$rowf["gemarkungsnummer"]." ".$rowf["bezeichnung"]."</td>";368 369 echo "\n\t<td>".$rowf["flurnummer"]."</td>";370 371 echo "\n\t<td>".$fskenn."</a>";372 373 if ($idanzeige) {linkgml($gkz, $rowf["gml_id"], "Flurstück");}374 echo "</td>";375 376 echo "\n\t<td class='fla'>".$flae."</td>";377 378 echo "\n\t<td><p class='nwlink noprint'>";379 echo "\n\t\t<a href='alkisfsnw.php?gkz=".$gkz."&gmlid=".$rowf["gml_id"]."&eig=n"."&style=".$style;380 if ($idanzeige) { echo "&id=j";}381 echo "' title='Flurstücksnachweis'>FS-Nachw.</a>";382 echo "</p></td>";383 384 echo "\n</tr>";385 }386 $j++;387 } // Ende Schleife Flurstueck388 if ($j == 0) {389 echo "\n<p class='err'>Kein Flurstück gefunden.</p>";390 linkgml($gkz, $row["gml_id"], "Buchungststelle");391 }392 If ($style == "alkis") {393 } else { // Kompakter Style394 if ($row["nrap"] != "") {395 echo "\n<tr>\n\t<td></td>\n\t<td colspan=6>Nr. im Aufteilungsplan: ".$row["nrap"]."</td>\n<tr>"; // nummerimaufteilungsplan396 }397 if ($row["sond"] != "") { // ++ style-class ?398 echo "\n<tr>\n\t<td></td>\n\t<td colspan=6>Verbunden mit dem Sondereigentum an: ".$row["sond"]."</td>\n<tr>"; //beschreibungdessondereigentums399 }400 240 } 401 241 $i++; 402 } // Ende Schleife Buchungsstelle 403 404 If ($style == "alkis") { 405 } else { // kompakter Style 406 echo "\n</table>"; 407 } 408 242 } // Ende Buchungsstelle 243 244 echo "\n</table>"; 409 245 if ($i == 0) { 410 246 echo "\n<p class='err'>Keine Buchung gefunden.</p>\n"; … … 421 257 </div> 422 258 </form> 423 <?php footer($gkz, $gmlid, $idanzeige, $self, $hilfeurl, $style); ?>259 <?php footer($gkz, $gmlid, $idanzeige, $self, $hilfeurl, ""); ?> 424 260 </body> 425 261 </html>
Note: See TracChangeset
for help on using the changeset viewer.